home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 11 / Cream of the Crop 11-1.iso / comm / tcp4w15.zip / TCP4W.H < prev    next >
C/C++ Source or Header  |  1995-11-21  |  5KB  |  103 lines

  1. /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
  2. /*                                                                 */
  3. /*                                                                 */
  4. /*                                                                 */
  5. /*   TCP4W.DLL  (Version 1.5)                                      */
  6. /*                                                                 */
  7. /*                                                                 */
  8. /*                                                   By Ph. Jounin */
  9. /*                                        Internet ark@ifh.sncf.fr */
  10. /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
  11.  
  12.  
  13. #ifndef TCP4W_API
  14.  
  15. #include <winsock.h>
  16.  
  17. #ifdef __cplusplus  
  18. extern "C" {            /* Assume C declarations for C++ */   
  19. #endif  /* __cplusplus */   
  20.  
  21. #define API4W PASCAL FAR 
  22.  
  23. /* ------------------------------- */
  24. /* Return codes of TCP4W functions */
  25. /* ------------------------------- */
  26. #define  IP_SUCCESS           1  /* >=1 function OK            */
  27. #define  IP_ERROR            -1  /* error                      */
  28. #define  IP_TIMEOUT          -2  /* timeout has occured        */
  29. #define  IP_BUFFERFREED      -3  /* the buffer has been freed  */
  30. #define  IP_HOSTUNKNOWN      -4  /* connect to unknown host    */
  31. #define  IP_NOMORESOCKET     -5  /* all socket has been used   */
  32. #define  IP_NOMORERESOURCE   -5  /* or no more free resource   */
  33. #define  IP_CONNECTFAILED    -6  /* connect function has failed*/
  34. #define  IP_UNMATCHEDLENGTH  -7  /* TcpPPRecv : Error in length*/
  35. #define  IP_BINDERROR        -8  /* bind failed (Task already started?) */
  36. #define  IP_OVERFLOW         -9  /* Overflow during TcpPPRecv  */
  37. #define  IP_EMPTYBUFFER     -10  /* TcpPPRecv receives 0 byte  */
  38. #define  IP_CANCELLED       -11  /* Call cancelled by TcpAbort */
  39. #define  IP_INSMEMORY       -12  /* Not enough memory          */
  40. #define  IP_SOCKETCLOSED      0  /* Host has close connection  */
  41.  
  42. /* ------------------------------ */
  43. /* Return codes of TN4W functions */
  44. /* ------------------------------ */
  45. #define  TN_SUCCESS        IP_SUCCESS
  46. #define  TN_ERROR          IP_ERROR         
  47. #define  TN_TIMEOUT        IP_TIMEOUT       
  48. #define  TN_BUFFERFREED    IP_BUFFERFREED   
  49. #define  TN_SOCKETCLOSED   IP_SOCKETCLOSED
  50. #define  TN_OVERFLOW       2
  51.  
  52.  
  53.  
  54. /* ------------------------------------------------- */
  55. /* Registration functions                            */   
  56. /* ------------------------------------------------- */
  57. int API4W Tcp4wInit (void);
  58. int API4W Tcp4wCleanup (void);
  59. int API4W Tcp4wVer (LPSTR szInfo, UINT uBufSize);
  60.  
  61.  
  62. /* ------------------------------------------------- */
  63. /* TCP functions                                     */   
  64. /* ------------------------------------------------- */
  65. int API4W TcpAbort (void);
  66. int API4W TcpAccept (SOCKET far *pCSock, SOCKET ListenSock, UINT nTO);
  67. int API4W TcpConnect (SOCKET far *pS, LPSTR szServer, LPSTR szService, unsigned short far *lpPort);
  68. int API4W TcpClose (SOCKET far *pS);
  69. int API4W TcpFlush (SOCKET s);
  70. int API4W TcpGetListenSocket (SOCKET far *pS, LPSTR szService, short far *lpPort, int nPendingConnection);
  71. int API4W TcpRecv (SOCKET s, LPSTR szBuf, unsigned uBufSize, unsigned uTimeOut, HFILE hf);
  72. int API4W TcpSend (SOCKET s, LPSTR szBuf, unsigned uBufSize, BOOL bHighPriority, HFILE hf);
  73.  
  74. int API4W TcpGetLocalID (LPSTR szStrName, int uNameSize, DWORD far *lpAddress);
  75. int API4W TcpGetRemoteID (SOCKET s, LPSTR szStrName, int uNameSize, DWORD far *lpAddress);
  76. BOOL API4W TcpIsDataAvail (SOCKET s);
  77. BOOL API4W TcpIsOOBDataAvail (SOCKET s);
  78.  
  79. /* PP protocole (2 first bytes contain length of data) */
  80. int API4W TcpPPRecv (SOCKET s, LPSTR szBuf, unsigned uBufSize, unsigned uTimeOut, BOOL bExact, HFILE hLogFile);
  81. int API4W TcpPPSend (SOCKET s, LPSTR szBuf, unsigned uBufSize, HFILE hLogFile);
  82.  
  83. int API4W TcpRecvUntilStr (SOCKET s, LPSTR szBuf,unsigned far *lpBufSize,
  84.                           LPSTR szStop, unsigned uStopSize, BOOL bCaseSensitive,
  85.                           unsigned uTimeOut, HFILE hLogFile);
  86.    
  87. /* ------------------------------------------------- */
  88. /* Telnet functions                                  */   
  89. /* ------------------------------------------------- */
  90. int API4W TnReadLine (SOCKET s, LPSTR szBuf, UINT BufSize, UINT uTimeOut, HFILE hf);
  91. int API4W TnSend (SOCKET s, LPSTR szString, BOOL bHighPriority, HFILE hf);
  92. int API4W TnGetAnswerCode(SOCKET ctrl_skt,LPSTR szInBuf,UINT uBufSize,UINT uTimeOut, HFILE hf);
  93.  
  94.  
  95.  
  96. #ifdef __cplusplus     
  97. }  /* End of extern "C" */   
  98. #endif /* ifdef __cplusplus */
  99.  
  100. #define TCPW_API loaded
  101. #endif /* ifndef TCP4W_API */
  102.  
  103.